perm filename RHYTB.FAI[LCS,MUS] blob sn#030355 filedate 1973-03-20 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002		ENTRY RHYTHM
C00006 ENDMK
C⊗;
	ENTRY RHYTHM
	TITLE RHYTHM
	SUBTTL PGM TO INPUT RHYTHMS FROM TELEGRAPH KEYS
	OPDEF SPCWAR [XWD 043000,0]
;KEYBRD←←1
IFNDEF KEYBRD,<KEYBRD←←0>
RHYTHM:	JUMP 0
	HRRZ 16,16
	MOVE @16
	HRRM B1
	AOS 16
	MOVE @16
	HRRM B2
	SPCWAR 636367
	SETZM TOFF#
	SETZM OFFC1#
	SETZM OFFC2#
	SETZM ONC1#
	SETZM ONC2#
	SETZM CLOCK#
	SETZM LCLK#
	SETZM FT#
IFN KEYBRD,
<	MOVE 1,[XWD 400001,START]
	SPCWGO 1,
;	SETOM LINE
;	TTYUUO 6,LINE
;	HRRZ 1,LINE
;	SUBI 1,20
;	JUMPL 1,[NOTKBD: OUTSTR[ASCIZ/NOT AT RIGHT KIND OF KEYBOARD./]
;			 EXIT ]
;	CAIG 6,100
;	JRST NOTKBD
;	TRO 6,100
;	MOVE 1,LINE
;>	SPCWAR 1,START
	MOVEI 1,1
	SLEEP 1,
	SKIPN TOFF
	JRST .-2
	MOVE I
B2:	MOVEM 0
	SPCWAR 636367
	JRA 16,1(16)
START:	SKIPE TOFF
	CALLI 400024
	AOS CLOCK
IFN KEYBRD,
<
;	DATAO	310,LINE		;SELECT KEYBOARD NUMBER
;	DATAI	310,A			;READ THE BITS FROM HIS LINE
	SETOM KBITS
	TTYUUO 16,KBITS
	MOVE 1,KBITS
	ROT 1,-2
;> 	MOVEM 1,KBITS#			;SAVE SPACEWAR BITS FOR DEBUGGINH
	TRNN 1,200
	JRST B1ON
	AOS OFFC1
	SETZM ONC1
CK2:	TRNN 1,100
	JRST B2ON
	AOS OFFC2
	SETZM ONC2
	SKIPE ONC1
	JRST TEST2
	SKIPN FT
	CALLI 400024
	MOVEI =600
	CAMLE OFFC1
	CALLI 400024
	CAMLE OFFC2
	CALLI 400024
	SETOM TOFF
	CALLI 400024
B1ON:	SETZM OFFC1
	AOS ONC1
	MOVEI 2	;ADDR IS # OF TICS SW MUST BE CLOSED
	CAME ONC1
	JRST CK2
	SKIPE FT
	JRST EVENT
	SETOM FT
	SETZM LCLK
	CALLI 400024
B2ON:	SETZM OFFC2
	AOS ONC2
	MOVEI 2	;ADDR IS # OF TICS SW MUST BE CLOSED
	CAME ONC2
	JRST TEST2
	SKIPE FT
	JRST EVENT
	SETOM FT
	SETZM LCLK
	CALLI 400024
TEST2:	MOVEI =200
	CAMG ONC1
	JRST TG1
	CAMLE ONC2
	CALLI 400024
TG1:	SETZM TOFF
	SETZM FT
	SETZM I
	CALLI 400024
EVENT:	SKIPE LCLK
	JRST TG2
	SETZM I#
	SETZM 1
	SETOM LCLK
	JRST TG3
TG2:	MOVE CLOCK
	SUB OCLOCK
	FSC 233
	FMPR TICL
	MOVE 1,I
B1:	MOVEM 0(1)
	AOS I
TG3:	MOVE CLOCK
	MOVEM OCLOCK#
	CAIGE 1,=500
	CALLI 400024
	SETOM TOFF
	CALLI 400024
TICL:	0.01666667
	END